import java.util.ArrayList;
import java.util.List;

/**
 * Created with IntelliJ IDEA
 * Description:
 * User: SEKI TOMOKI
 * Date: 2023-09-25
 * Time: 14:50
 */
class Solution {
    public List<List<Integer>> generate(int numRows) {
        //相当于初始化一个List，List中的每一个数据都是一个ArrayList的引用
        List<List<Integer>> retLists = new ArrayList<>();

        //先加第一行的1
        List<Integer> firstList = new ArrayList<>();
        firstList.add(1);
        retLists.add(firstList);

        for(int i = 1; i < numRows; i++) {
            //先初始化这一行的顺序表，然后这一行顺序表的第一个数据先填一个1
            List<Integer> nowList = new ArrayList<>();
            nowList.add(1);

            for(int j = 1; j < i; j++) {
                List<Integer> lastList = retLists.get(i - 1);//得到上一行的顺序表
                nowList.add(lastList.get(j-1) + lastList.get(j));
            }
            //每一行加上一个1作为结尾
            nowList.add(1);
            //把这一个顺序表的引用添加到retLists
            retLists.add(nowList);
        }

        return retLists;
    }
}
